package com.candy.dao;

import java.sql.*;

public class DBhelper {
//    main方法，程序启动入口，在idea中可以使用快捷指令  main或者psvm快速生成该方法
    public static void main(String[] args) {
//        异常处理，主动捕获的方式，在idea里面的快捷键（alt+t或者ctrl+alt+t)可以自动生成try方法
        try {
    //    （1）注册或实例化jdbc的驱动类
                Class.forName("com.mysql.cj.jdbc.Driver");
    //    （2）获取数据库连接对象Connection
//            jdbc:mysql表示使用jdbc链接mysql数据库
//            localhost表示要链接的数据库所在的地址（ip），此时的localhost表示本机，可以用127.0.0.1代替
//            3306是mysql数据库的端口号
//            database_name表示你要链接的数据库的名字
            String url="jdbc:mysql://localhost:3306/ld_mysql0317? characterEncoding=utf8 & useSSL=false & serverTimezone=UTC & rewriteBatchedStatements=true";
            String username="root";
            String password="123456";
            Connection conn=DriverManager.getConnection(url,username,password);
    //    （3）获取数据库操作对象Statement（执行增删改查）
            Statement ment= conn.createStatement();
    //    （4）执行SQL语句，获取数据操作结果或者结果集对象ResultSet
            String sql="select * from userinfo;";
            ResultSet re= ment.executeQuery(sql);
    //    （5）解析结果集对象ResultSet，进行相关的业务处理；
//            当前行有数据则返回true，反之返回false
            while (re.next()){
                Object id=re.getObject(1);
                Object name=re.getObject(2);
                Object userpwd=re.getObject(3);
                Object useradress=re.getObject(4);
//                将结果打印在控制台
//                可以使用快捷键sout
                System.out.println(id+" "+name+" "+userpwd+" "+useradress);
            }
    //     (6)关闭资源；资源关闭要有顺序，先关闭ResultSet,再关闭Statement，最后关闭Connection
            re.close();
            ment.close();
            conn.close();
            System.out.println("资源关闭之后...");
            while (re.next()){
                Object id=re.getObject(1);
                Object name=re.getObject(2);
                Object userpwd=re.getObject(3);
                Object useradress=re.getObject(4);
//                将结果打印在控制台
//                可以使用快捷键sout
                System.out.println(id+" "+name+" "+userpwd+" "+useradress);
            }

        } catch (ClassNotFoundException e) {
            throw new RuntimeException(e);
        }catch (SQLException e) {
            throw new RuntimeException(e);
        }

    }

}
